home *** CD-ROM | disk | FTP | other *** search
/ Suzy B Software 2 / Suzy B Software CD-ROM 2 (1994).iso / extras / programm / gemfsc20 / gemfsc20.lzh / GEMFBIND / VJUSTIFY.S < prev    next >
Text File  |  1993-03-16  |  2KB  |  55 lines

  1. ;*========================================================================
  2. ;* VDIFAST Public Domain VDI bindings.
  3. ;*========================================================================
  4.  
  5.  
  6. ;*------------------------------------------------------------------------
  7. ;* Justified text.
  8. ;*------------------------------------------------------------------------
  9.  
  10.           globl     _v_justified
  11. _v_justified:
  12.  
  13. ;    .cargs    #8,handle.w,x.w,y.w,p_str.l,length.w,wspace.w,cspace.w
  14.  
  15. handle      =         8
  16. x          =         10
  17. y          =         12
  18. p_str      =         14
  19. length      =         18
  20. wspace      =         20
  21. cspace      =         22
  22.  
  23.           link        a6,#0
  24.  
  25.           move.l    p_str(a6),a0        ;* Get the string pointer.
  26.           jsr        vstr_stack            ;* Go integerize and stack string.
  27.  
  28.           move.w    cspace(a6),-(sp)    ;* The character and word spacing
  29.           move.w    wspace(a6),-(sp)    ;* flags are the 1st 2 intin words.
  30.           addq.w    #2,d0                ;* Count the 2 extra words in length.
  31.           move.l    sp,a0                ;* Save pointer to intin.
  32.  
  33.           clr.w     -(sp)                ;* Build the ptsin array on the stack,
  34.           move.w    length(a6),-(sp)    ;* because it has an extra null word
  35.           move.l    x(a6),-(sp)         ;* after the x/y/length.
  36.           move.l    sp,a1                ;* Save pointer to ptsin.
  37.  
  38. ;          VContrl    #11,#10,#2,d0
  39.           move.w    handle(a6),-(sp)    ; contrl[6]
  40.           move.w    #10,-(sp)            ; contrl[5]
  41.           subq.l    #2,sp                ; contrl[4]
  42.           move.w    d0,-(sp)            ; contrl[3]
  43.           subq.l    #2,sp                ; contrl[2]
  44.           move.w    #2,-(sp)            ; contrl[1]
  45.           move.w    #11,-(sp)            ; contrl[0]
  46.  
  47.           subq.l    #8,sp                ;* -> ptsout, intout
  48.           move.l    a1,-(sp)            ;* -> ptsin
  49.           move.l    a0,-(sp)            ;* -> intin
  50.           pea        16(sp)                ;* -> contrl
  51.  
  52.           jmp        vdicall
  53.  
  54.           end
  55.